package beans;

import java.util.ArrayList;
import java.util.List;

import javax.faces.bean.ApplicationScoped;
import javax.faces.bean.ManagedBean;
import javax.faces.event.ActionEvent;

import modelo.TipoCarretera;

@ManagedBean
@ApplicationScoped
public class TipoCarreteraBean {
	
	private List<TipoCarretera> listaTipoCarretera;
	private TipoCarretera tipoCarretera;
	private List<TipoCarretera> listaTipoFiltrada;

	public TipoCarreteraBean() {
		super();
		listaTipoCarretera = new ArrayList<TipoCarretera>();
		listaTipoFiltrada = new ArrayList<TipoCarretera>();
		filtrarTipos();
	}
	
	public TipoCarreteraBean(List<TipoCarretera> listaTipoCarretera,
			TipoCarretera tipoCarretera, List<TipoCarretera> listaTipoFiltrada) {
		super();
		this.listaTipoCarretera = listaTipoCarretera;
		this.tipoCarretera = tipoCarretera;
		this.listaTipoFiltrada = listaTipoFiltrada;
	}
	
	private List<TipoCarretera> filtrarTipos() {
		llenarLista();
		for (int i=0; i < listaTipoCarretera.size(); i++) {
			if (listaTipoCarretera.get(i).getStatus() == 'A') {
				listaTipoFiltrada.add(listaTipoCarretera.get(i));
			}
		}
		return listaTipoFiltrada;
	}
	
	private void llenarLista() {
		listaTipoCarretera.add(new TipoCarretera(1, "Asfalto", "Carretera totalmente asfaltada", 'A'));
		listaTipoCarretera.add(new TipoCarretera(1, "Asfalto-Cemento", "Carretera con secciones de asfalto y secciones de cemento", 'A'));
		listaTipoCarretera.add(new TipoCarretera(1, "Tierra", "Carretera de tierra suelta", 'I'));
	}
	
	public List<TipoCarretera> getListaTipoCarretera() {
		return listaTipoCarretera;
	}

	public void setListaTipoCarretera(List<TipoCarretera> listaTipoCarretera) {
		this.listaTipoCarretera = listaTipoCarretera;
	}

	public TipoCarretera getTipoCarretera() {
		return tipoCarretera;
	}

	public void setTipoCarretera(TipoCarretera tipoCarretera) {
		this.tipoCarretera = tipoCarretera;
	}

	public List<TipoCarretera> getListaTipoFiltrada() {
		return listaTipoFiltrada;
	}

	public void setListaTipoFiltrada(List<TipoCarretera> listaTipoFiltrada) {
		this.listaTipoFiltrada = listaTipoFiltrada;
	}
	
	
	

}
